﻿function checkLength(sender, args) {
	var length = sender.getAttribute('length', 0);
	var isRequired = sender.getAttribute('required', 0);
	if (isRequired) {
		args.IsValid = args.Value.length > 0;
		if (!args.IsValid) {
			sender.errormessage = "Vui lòng nhập media";
			return;
		}
	}

	if (length <= 0) {
		args.IsValid = true;
		sender.errormessage = "";
	}
	else {
		args.IsValid = args.Value.length <= length;
		sender.errormessage = "Media không được nhiều hơn 50 ký tự";
	}

}

function checkLengthNotVerReq(sender, args)
{
    var length = sender.getAttribute('length', 0);
    
    if (length <= 0)
    {
        args.IsValid = true;
        sender.errormessage = "";
    }
    else
    {
        args.IsValid = args.Value.length <= length;
        sender.errormessage = "Media không được nhiều hơn 50 ký tự";
    }

}

function parseDate(value) {
	var dateValue;
	var elements = value.split('/');
	try {
		var day = parseInt(elements[0]);
		var month = parseInt(elements[1]) - 1;
		var year = parseInt(elements[2]);
		dateValue = new Date(year, month, day);
		//			alert(day + " " + dateValue.getDate());
		//			alert(month + " " + dateValue.getMonth());
		//			alert(year + " " + dateValue.getFullYear());
		//			alert(dateValue.toDateString());
		if (day == dateValue.getDate() && month == dateValue.getMonth() && year == dateValue.getFullYear()) {
			return dateValue;
		}
		else {
			return null;
		}
	}
	catch (e) {
		return null;
	}
}


function compareWithGreaterDate(sender, args) {
	var value = args.Value;
	var controlToCompareName = sender.getAttribute("controltocompare", 0);

	var controlToCompare = document.getElementById(controlToCompareName);
	var valueToCompare = controlToCompare.value;

	var dateValue = parseDate(value);
	var dateValueToCompare = parseDate(valueToCompare);

	if (dateValue == null) {
		args.IsValid = false;
		sender.errormessage = "Ngày bắt đầu sai định dạng";
	}
	else {
		if (valueToCompare.length > 0) {
			if (dateValueToCompare == null) {
				args.IsValid = true;
			}
			else {
				args.IsValid = dateValue < dateValueToCompare;
				sender.errormessage = args.IsValid ? "" : "Ngày bắt đầu phải nhỏ hơn ngày kết thúc";
			}
		}
		else {
			args.IsValid = true;
		}
	}
}

function compareWithLessDate(sender, args) {
	var value = args.Value;

	var controlToCompareName = sender.getAttribute("controltocompare", 0);
	var controlToCompare = document.getElementById(controlToCompareName);
	var valueToCompare = controlToCompare.value;

	var dateValue = parseDate(value);
	var dateValueToCompare = parseDate(valueToCompare);

	if (dateValue == null) {
		args.IsValid = false;
		sender.errormessage = "Ngày kết thúc sai định dạng";
	}
	else {
		if (valueToCompare.length > 0) {
			if (dateValueToCompare == null) {
				args.IsValid = true;
			}
			else {
				args.IsValid = dateValue > dateValueToCompare;
				sender.errormessage = args.IsValid ? "" : "Ngày kết thúc phải lớn hơn ngày bắt đầu";
			}
		}
		else {
			args.IsValid = true;
		}
	}
}		